/*
 * InputManager.h
 *
 *  Created on: 03/08/2010
 *      Author: alex
 */

#ifndef INPUTMANAGER_H_
#define INPUTMANAGER_H_

#include <vector>
#include <SDL/SDL.h>
#include "core/utils.h"
//#include "core/NetworkManager.h"


class InputManager {

public:

	InputManager();

	InputManager& pollEvents();

	bool isQuitRequested() const {
		return quit;
	}

	bool isKeyPress(int key, unsigned player) {
		return keys[player][key];
	}

	//bool isKeyDown(int key) const {
	//	return keyDown[key];
	//}

	//bool isKeyUp(int key) const {
	//	return keyUp[key];
	//}

protected:

	std::vector<std::vector<char> > keys;

	bool quit;

	SDL_Event event;
	//NetworkManager *networkManager;

};


extern InputManager inputManager;


#endif /* INPUTMANAGER_H_ */
